Matthias Clasen [Fri, 13 Dec 2019 16:13:17 +0000 (16:13 +0000)]
Merge branch '1509-don-t-show-Rejecting-Jobs-when-we-don-t-know' into 'master'
Fix getting info for standalone IPP printers
Closes #1509
See merge request GNOME/gtk!1247
Daniel Mustieles [Fri, 13 Dec 2019 11:24:36 +0000 (12:24 +0100)]
Updated Spanish translation
Matthias Clasen [Thu, 12 Dec 2019 23:46:53 +0000 (18:46 -0500)]
gtk-demo: Some touchups
Make the theming style classes demo look a bit less odd.
Matthias Clasen [Thu, 12 Dec 2019 23:37:39 +0000 (18:37 -0500)]
Run gtk-builder-tool simplify over our ui files
This was done mainly to verify that the tool does not
make any unwarranted changes. The changes included here
are all cosmetic.
Matthias Clasen [Thu, 12 Dec 2019 23:21:16 +0000 (18:21 -0500)]
Add GtkNative to the docs
It was not included in the generated docs.
Matthias Clasen [Thu, 12 Dec 2019 23:18:49 +0000 (18:18 -0500)]
Fix up GtkBuilderScope docs
They were not hooked into the document generation.
Matthias Clasen [Thu, 12 Dec 2019 22:58:42 +0000 (17:58 -0500)]
builder: Another small docs fix
Matthias Clasen [Thu, 12 Dec 2019 22:58:23 +0000 (17:58 -0500)]
docs: Ignore more private headers
Matthias Clasen [Thu, 12 Dec 2019 22:34:41 +0000 (17:34 -0500)]
docs: Remove symbols that no longer exist
Matthias Clasen [Thu, 12 Dec 2019 22:53:36 +0000 (22:53 +0000)]
Merge branch 'issue-179' into 'master'
Use a separate gesture for middle clicks on PlaceView rows
Closes #179
See merge request GNOME/gtk!1199
Matthias Clasen [Thu, 12 Dec 2019 22:31:13 +0000 (17:31 -0500)]
textbuffer: Minor doc fixes
Fix parameter name mismatches.
Matthias Clasen [Thu, 12 Dec 2019 22:30:36 +0000 (17:30 -0500)]
builder: Minor doc fixes
Fix parameter name mismatches.
Matthias Clasen [Thu, 12 Dec 2019 20:36:08 +0000 (20:36 +0000)]
Merge branch 'wip/otte/builder' into 'master'
More builder work
Closes #2267
See merge request GNOME/gtk!1230
Matthias Clasen [Thu, 12 Dec 2019 19:33:02 +0000 (19:33 +0000)]
Merge branch 'file-transfer' into 'master'
clipboard: file transfer portal support
See merge request GNOME/gtk!1244
Matthias Clasen [Mon, 3 Sep 2018 22:36:56 +0000 (18:36 -0400)]
clipboard: file transfer portal support
Implement file-list <-> application/vnd.flatpak.file-list
serialization by talking to the file transfer portal.
See https://github.com/flatpak/xdg-desktop-portal/pull/222
Matthias Clasen [Thu, 12 Dec 2019 19:18:06 +0000 (19:18 +0000)]
Merge branch 'master-gitlab-HC-tooltip' into 'master'
Set HighContrast tooltip back to black text over white background
See merge request GNOME/gtk!1242
Benjamin Otte [Wed, 11 Dec 2019 19:00:46 +0000 (20:00 +0100)]
gtk-demo: Don't include "gtk.h"
Benjamin Otte [Thu, 12 Dec 2019 02:13:22 +0000 (03:13 +0100)]
tests: Set an existing font in testfontchooser
Benjamin Otte [Tue, 3 Dec 2019 04:41:42 +0000 (05:41 +0100)]
builder: Turn last dlsym() function into a scope API
Looking up a get_type function by its name is now also part of
GtkBuilderScope.
Benjamin Otte [Sat, 30 Nov 2019 00:17:10 +0000 (01:17 +0100)]
builder: Add GtkBuilderScope
GtkBuilderScope is an interface that provides the scope that a builder
instance operates in.
It creates closures and resolves types. Language bindings are meant to
use this interface to customize the behavior of builder files, in
particular when instantiating templates.
A default implementation for C is provided via GtkBuilderCScope (to keep
with the awkward naming that glib uses for closures). It is derivable on
purpose so that languages or extensions that extend C can use it.
The reftest code in fact does derive GtkBuilderCScope for its own scope
implementation that implements looking up symbols in modules.
gtk-widget-factory was updated to use the new GtkBuilderCScope to add
its custom callback symbols.
So it does it different from gtk-demo, which uses the normal way of
exporting symbols for dlsym() and thereby makes the 2 demos test the 2
ways GtkBuilder uses for looking up symbols.
Benjamin Otte [Thu, 28 Nov 2019 03:01:19 +0000 (04:01 +0100)]
builder: Add gtk_builder_set_current_object()
Use it as the default object for expression binds and when connecting
signals. It is intended to work kind of as the "this" object while
parsing. In fact, the term "current object" was stolen from the Java
docs and various C++ tutorials for the this pointer.
Set the current object in gtk_widget_init_template() and
GtkListItemBuilder.
This more-or-less replaces the object passed to
gtk_builder_connect_signals() in GTK3.
Benjamin Otte [Mon, 25 Nov 2019 06:40:28 +0000 (07:40 +0100)]
builder: Add gtk_builder_lookup_object()
... and use it. This function looks up an object like
gtk_builder_get_object() but generates an error on failure.
Unlike the evil function _gtk_builder_lookup_object() which also
generates an error but hides it for later lookup.
Use this to avoid continuing applying properties when an error was
encountered.
Benjamin Otte [Thu, 12 Dec 2019 17:20:29 +0000 (18:20 +0100)]
types: Move GTK_INVALID_LIST_POSITION here
I have no idea where it should go really - maybe glib?
It certainly shouldn't require everybody including selectionmodel code
just to get at this value.
Matthias Clasen [Thu, 12 Dec 2019 17:57:05 +0000 (17:57 +0000)]
Merge branch 'terminal' into 'master'
imwayland: Suppport terminal purpose
See merge request GNOME/gtk!1243
Marek Kasik [Thu, 12 Dec 2019 15:56:37 +0000 (16:56 +0100)]
printing: Fix getting info for standalone IPP printers
Create printer name from name of the advertised service
for standalone IPP printers as opposed to CUPS printers
advertised via Avahi which get name from their
resource path.
This is similar to what cups-filters does.
Pass GtkPrinter class to request for printer info
so that it does not need to be searched for
(such search could fail for standalone IPP printers).
https://gitlab.gnome.org/GNOME/gtk/issues/1509
Marek Kasik [Fri, 25 Jan 2019 15:41:24 +0000 (16:41 +0100)]
printing: Don't show Rejecting Jobs when we don't know
Set reasonable default values for printers discovered
by Avahi which do not have 'printer-type' attribute.
This is the case for network printers which were not
published by CUPS.
Related to the issue #1509.
Dorota Czaplejewicz [Thu, 12 Dec 2019 14:37:51 +0000 (14:37 +0000)]
imwayland: Suppport terminal purpose
Jonathan Michalon [Thu, 12 Dec 2019 08:51:40 +0000 (09:51 +0100)]
Set HighContrast tooltip back to black text over white background
8abdbfee1642332688f030f53d22b995a21ce814 pulled Adwaita tooltip selectors,
but in the meantime the colors were also set to Adwaita's. Push back the same
behaviour as before because it's better for visually-impaired users.
Christoph Reiter [Wed, 11 Dec 2019 12:59:23 +0000 (12:59 +0000)]
Merge branch 'honor-hotspot-gtk4' into 'master'
gdk/x11: Honor hotspot during drag cancel animation
See merge request GNOME/gtk!1236
Chun-wei Fan [Wed, 11 Dec 2019 06:24:49 +0000 (06:24 +0000)]
Merge branch 'vulkan-no-layered-windows' into 'master'
Win32: Do not enable layered windows when using Vulkan
See merge request GNOME/gtk!1217
Matthias Clasen [Tue, 10 Dec 2019 03:05:09 +0000 (03:05 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
widget factory: Fix more grid layout fallout
See merge request GNOME/gtk!1237
Matthias Clasen [Tue, 10 Dec 2019 02:29:03 +0000 (21:29 -0500)]
widget factory: Fix more grid layout fallout
Benjamin Otte [Sun, 8 Dec 2019 05:26:58 +0000 (06:26 +0100)]
a11y: We can peek here
Avoids instantiating a11y objects when we don't need to.
Benjamin Otte [Sun, 8 Dec 2019 05:26:26 +0000 (06:26 +0100)]
treeview: Don't create a cyclic reference
TreeRowReference refs the proxy object, so don't use proxies.
Benjamin Otte [Sun, 8 Dec 2019 04:32:35 +0000 (05:32 +0100)]
label: Compute label baselines correctly
When we were switching smallest and widest, we were not switching the
baselines.
Robert Mader [Mon, 9 Dec 2019 00:45:27 +0000 (01:45 +0100)]
gdk/x11: Honor hotspot during drag cancel animation
Otherwise the icon "jumps" to the cursor position with its top left when
the animation starts.
This is especially visible if the dragged item is big, like when dragging
mails in Thunderbird.
Matthias Clasen [Sun, 8 Dec 2019 22:58:09 +0000 (17:58 -0500)]
Add GtkTreeListRow type to the docs
Matthias Clasen [Sun, 8 Dec 2019 18:48:52 +0000 (13:48 -0500)]
Add missing listmodel and selection types to the docs
Matthias Clasen [Sun, 8 Dec 2019 03:39:35 +0000 (22:39 -0500)]
tree list model: Add a missing annotation
The GtkTreeListModelCreateModelFunc returns
a new reference.
Matthias Clasen [Sun, 8 Dec 2019 00:39:02 +0000 (19:39 -0500)]
inspector: Avoid critical warnings
We were still using this but it's not defined in the UI xml.
Fixes: https://gitlab.gnome.org/GNOME/gtk/issues/2295
Matthias Clasen [Sat, 7 Dec 2019 23:20:51 +0000 (23:20 +0000)]
Merge branch 'inspector-display' into 'master'
Inspector display
See merge request GNOME/gtk!1234
Matthias Clasen [Sat, 7 Dec 2019 17:42:37 +0000 (12:42 -0500)]
inspector: Make the css tree respect inspected display
The display is used here to force reparsing the theme
on the right settings object.
Matthias Clasen [Sat, 7 Dec 2019 17:31:10 +0000 (12:31 -0500)]
inspector: Make logs respect inspected display
Matthias Clasen [Sat, 7 Dec 2019 17:30:40 +0000 (12:30 -0500)]
inspector: Make inspect button use inspected display
This may not matter, but just for cleanliness.
Matthias Clasen [Sat, 7 Dec 2019 17:30:15 +0000 (12:30 -0500)]
inspector: Make general respect inspected display
Matthias Clasen [Sat, 7 Dec 2019 17:07:12 +0000 (12:07 -0500)]
inspector: Make visual settings respect the inspected display
This is not quite complete, GTK and GSK debug flags
are not per display, and slowdown and text direction
are not either.
Matthias Clasen [Sat, 7 Dec 2019 16:48:39 +0000 (11:48 -0500)]
inspector: Make css editor respect inspected display
Stop using gdk_display_get_default and use the
inspected display instead.
Matthias Clasen [Sat, 7 Dec 2019 16:49:30 +0000 (11:49 -0500)]
inspector: Make object tree respect inspected display
Stop using gdk_display_get_dfault and use the
inspected display instead.
Matthias Clasen [Sat, 7 Dec 2019 16:08:34 +0000 (11:08 -0500)]
window: Get rid of the inspector_window static
Use the new per-display inspector plumbing and
stop relying on a static variable.
Matthias Clasen [Sat, 7 Dec 2019 15:54:10 +0000 (10:54 -0500)]
inspector: Attach inspector window to display
Give the inspector window a ::inspected-display
property, and pass a display when obtaining an
inspector window. Update the caller.
Matthias Clasen [Sat, 7 Dec 2019 15:34:17 +0000 (10:34 -0500)]
window: Inspector cleanups
Reduce the use of the inspector_window static.
The goal is to have one inspector window per
display, so we need to get rid of the static.
Matthias Clasen [Sat, 7 Dec 2019 15:05:26 +0000 (10:05 -0500)]
window: Remove inspector updating fully
Commit
05e752e096722 left some ruins behind.
Clean that up.
Matthias Clasen [Sat, 7 Dec 2019 15:00:41 +0000 (10:00 -0500)]
inspector: Init yourself
No need to have GTK call this from the outside.
Matthias Clasen [Sat, 7 Dec 2019 16:22:07 +0000 (11:22 -0500)]
inspector: Cleanup
Remove an unused enum.
Matthias Clasen [Sat, 7 Dec 2019 14:49:10 +0000 (09:49 -0500)]
Make a test with a custom display
This completely breaks the inspector.
Matthias Clasen [Thu, 5 Dec 2019 22:11:31 +0000 (22:11 +0000)]
Merge branch 'doc-update' into 'master'
doc: Cleanup doc removing mentions of gdk_surface_shape_combine_region()
See merge request GNOME/gtk!1232
Hubert Figuière [Thu, 5 Dec 2019 13:57:19 +0000 (08:57 -0500)]
doc: Cleanup doc removing mentions of gdk_surface_shape_combine_region()
Matthias Clasen [Thu, 5 Dec 2019 00:01:23 +0000 (00:01 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
fix leaks in the testsuite
See merge request GNOME/gtk!1231
Matthias Clasen [Wed, 4 Dec 2019 23:30:37 +0000 (18:30 -0500)]
Fix treelistmodel tests
They were failing to return a reference where they
need to. This was uncovered by fixing an unrelated
ref leak.
Matthias Clasen [Wed, 4 Dec 2019 12:51:04 +0000 (07:51 -0500)]
Fix leaks in tests
All the list model tests were leaking items,
because g_list_model_get_item is transfer full.
Fixing these unveils a crash in the treelistmodel
and maplistmodel tests.
Tim Sabsch [Wed, 4 Dec 2019 19:37:01 +0000 (19:37 +0000)]
Update German translation
Benjamin Otte [Sun, 1 Dec 2019 12:52:35 +0000 (13:52 +0100)]
builder: Improve error message
Benjamin Otte [Mon, 25 Nov 2019 05:06:31 +0000 (06:06 +0100)]
builder: Allow objects in gtk_builder_value_from_string_type()
Instead of throwing an error, lookup objects with
gtk_builder_get_object().
Benjamin Otte [Fri, 29 Nov 2019 07:48:48 +0000 (08:48 +0100)]
gtk-demo: Use normal way to lookup up symbols
We're a normal application, so we can use the normal way to hook up code
into builder files, which is using dlsym() for the function pointers.
There's no need to to extra work exporting static symbols.
Benjamin Otte [Mon, 2 Dec 2019 16:31:15 +0000 (17:31 +0100)]
css: Handle invalid :not() selectors
We weren't correctly ending the ( ) block when encountering an error.
Testcases added.
Fixes #2281
Timm Bäder [Tue, 3 Dec 2019 16:05:08 +0000 (16:05 +0000)]
Merge branch 'wip/wayland-hidpi-swap-region' into 'master'
Fix HiDPI swap regions on Wayland
See merge request GNOME/gtk!1228
Jonas Ådahl [Tue, 3 Dec 2019 15:42:03 +0000 (16:42 +0100)]
wayland/vulkancontext: Fix present region on HiDPI
VkPresentRegionsKHR is expected to operate in buffer coordinates, but
the region we get passed is in surface coordinates, so it must be scaled.
Jonas Ådahl [Tue, 3 Dec 2019 15:32:59 +0000 (16:32 +0100)]
wayland/glcontext: Fix damage region on HiDPI
The passed regions are in surface coordinates, but
eglSwapBuffersWithDamage() is in buffer coordinates.
Emmanuele Bassi [Tue, 3 Dec 2019 15:36:43 +0000 (15:36 +0000)]
Merge branch 'fix-treemodelsort_processed_as_treemodel' into 'master'
Annotate GtkTreeModelSort.new_with_model() appropriately
See merge request GNOME/gtk!1134
LutzLue [Tue, 3 Dec 2019 15:36:42 +0000 (15:36 +0000)]
Annotate GtkTreeModelSort.new_with_model() appropriately
The new_with_model() method is a constructor, and it returns a GtkTreeModelSort
instance, even if the C API returns a GtkTreeModel for the convenience of C
developers.
Fixes: #1077
Timm Bäder [Sat, 30 Nov 2019 11:44:30 +0000 (12:44 +0100)]
gl renderer: Implement blurred inset shadow nodes
And with this...
Fixes #1101
Timm Bäder [Sat, 30 Nov 2019 11:44:15 +0000 (12:44 +0100)]
gl renderer: Remove unused uniform from inset shadow shader
Timm Bäder [Sat, 30 Nov 2019 11:43:49 +0000 (12:43 +0100)]
opbuffer: Remove unused op member
Timm Bäder [Sat, 30 Nov 2019 08:26:01 +0000 (09:26 +0100)]
testsuite: Add an inset shadow rendering test case
Timm Bäder [Fri, 29 Nov 2019 13:40:20 +0000 (14:40 +0100)]
gl renderer: Cache current scale in RenderOpBuilder
We call ops_get_scale a lot, so this should be better. It will also make
a later x/y split for the scaling easier.
Timm Bäder [Fri, 29 Nov 2019 12:34:22 +0000 (13:34 +0100)]
cssshadowvalue: Simplify inset shadow nodes to color nodes if possible
inset shadows like this are frequently used to implement highlights in
CSS without crowing them min size of the element.
Timm Bäder [Fri, 29 Nov 2019 09:47:40 +0000 (10:47 +0100)]
gl renderer: Save one level of indentation
Timm Bäder [Fri, 29 Nov 2019 09:02:14 +0000 (10:02 +0100)]
window: Don't set invalid csd input shape
This might happen if the CSS values of the decoration node are broken,
e.g. if people *accidentally* type large negative values for the
margins.
Fixes #2268
Timm Bäder [Fri, 29 Nov 2019 08:14:55 +0000 (09:14 +0100)]
snapshot: Reorder color matrix nodes containing a transform node
A color matrix node that contains a transform node can also be expressed
the other way around, as a transform node containing a color matrix
node.
In the general case, the color matrix node will have to draw its
child to a texture so it can color every pixel of that texture, but the
renderers can short-cut this if the child of the color matrix node is
already a texture node. So if we have a node tree like
Color Matrix
- Transform
- Texture
The renderer would have to either check the grandchild of the color
matrix or simply fall back to rendering the transform node to a texture.
In the new configuration:
Transform
- Color Matrix
- Texture
The renderer can easily see that the child node of the color matrix node
is a texture, and skip rendering it to a texture.
This is for example happening in current Adwaita for spinners, which are
rotated symbolics.
Timm Bäder [Fri, 29 Nov 2019 08:13:27 +0000 (09:13 +0100)]
snapshot: Factor out color matrix merging
We will use that elsewhere in the next commit.
Timm Bäder [Fri, 29 Nov 2019 05:54:43 +0000 (06:54 +0100)]
gl renderer: Implement blurred shadow nodes
Timm Bäder [Fri, 29 Nov 2019 05:53:57 +0000 (06:53 +0100)]
gl renderer: Take a TextureRegion in blur_texture
So we can refer to textures on a texture atlas.
Timm Bäder [Fri, 29 Nov 2019 05:50:44 +0000 (06:50 +0100)]
gl renderer: Scale blur radius
We scale the texture size, so as a consequence we have to scale the blur
radius.
Timm Bäder [Thu, 28 Nov 2019 08:01:56 +0000 (09:01 +0100)]
gl renderer: Add some often needed debug code
Timm Bäder [Tue, 26 Nov 2019 08:38:53 +0000 (09:38 +0100)]
gl renderer: Blur shader improvements
Use a two-pass blur shader, fix a few other things and unify the
blurring of blur nodes and blurred outset shadow nodes.
Related to #1283
Timm Bäder [Tue, 19 Nov 2019 14:40:08 +0000 (15:40 +0100)]
testblur: Fix default blur radius
sync it up with the adjustment value. also just add the destroyed
handler.
Matthias Clasen [Mon, 2 Dec 2019 13:19:50 +0000 (13:19 +0000)]
Merge branch 'improve-popover-menu-style' into 'master'
Adwaita: Improve popover.menu styling
See merge request GNOME/gtk!1083
nana-4 [Thu, 7 Nov 2019 13:50:09 +0000 (22:50 +0900)]
Adwaita: Remove unused popover check/radio styling
nana-4 [Thu, 7 Nov 2019 13:34:01 +0000 (22:34 +0900)]
Adwaita: Flatten circular buttons in popover.menu
Just reuse the list button style.
https://gitlab.gnome.org/GNOME/gtk/issues/1824
nana-4 [Thu, 7 Nov 2019 13:00:20 +0000 (22:00 +0900)]
Adwaita: Make check & radio symbolic icon style in popover.menu
The disabled modelbutton color needs to be specified explicitly
in order for check & radio to properly read the color with
currentColor.
https://gitlab.gnome.org/GNOME/gtk/issues/1824
nana-4 [Thu, 7 Nov 2019 12:35:40 +0000 (21:35 +0900)]
Adwaita: Improve popover.menu styling
Based on the mockup:
https://gitlab.gnome.org/Teams/Design/os-mockups/blob/master/menus/menu-design-patterns.png
- Remove horizontal padding from popover.menu contents
- Remove roundness from modelbutton
- Adjust sizing to match the mockup
- Fix visual glitches on button.image-button.model
- Add missing mergin to arrow icons
- Fix accelerator position in rtl direction
- Fix accelerator color
https://gitlab.gnome.org/GNOME/gtk/issues/1824
Matthias Clasen [Sun, 1 Dec 2019 15:11:00 +0000 (15:11 +0000)]
Merge branch 'wip/muktupavels/opaque-region-master' into 'master'
window: fix opaque region
See merge request GNOME/gtk!1222
Matthias Clasen [Sun, 1 Dec 2019 15:09:39 +0000 (15:09 +0000)]
Merge branch 'sass-no-extend-compound-master' into 'master'
themes: remove various @extend with compound selectors
See merge request GNOME/gtk!1223
nana-4 [Sun, 1 Dec 2019 01:43:16 +0000 (10:43 +0900)]
themes: remove various @extend with compound selectors
They are no longer supported by sass and broken with libsass 3.6.3
(https://github.com/sass/libsass/issues/3033)
This removes them by replacing them with a placeholder selector. This at
least brings the resulting CSS size down a bit so gtk can be build
again.
`%button.flat.suggested-action` has been replaced by
`%selection_mode_button_flat`, which is a more appropriate selector for
`.selection-mode button.titlebutton`.
The CSS was generated with libsass 3.5.5.
Co-authored-by: Christoph Reiter <reiter.christoph@gmail.com>
See https://gitlab.gnome.org/GNOME/gtk/issues/2237
Alberts Muktupāvels [Sat, 30 Nov 2019 18:19:26 +0000 (20:19 +0200)]
window: fix opaque region
Decoration node for drawing is used only for client side decorated
windows, but corners from opaque region is subtracted also for
normal windows.
Rename function to better reflect what it does and do not subtract
corners if decoration node was not used for drawing.
Timm Bäder [Sat, 30 Nov 2019 07:40:48 +0000 (07:40 +0000)]
Merge branch 'gtk-link-color' into 'master'
Adwaita: always use link specific colors for link selector
See merge request GNOME/gtk!1201
Matthias Clasen [Fri, 29 Nov 2019 15:21:40 +0000 (15:21 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
some builder-tool tests
See merge request GNOME/gtk!1220
Matthias Clasen [Fri, 29 Nov 2019 14:51:35 +0000 (09:51 -0500)]
Update the test scripts
All tools got renamed to have a gtk4 prefix.
Matthias Clasen [Fri, 29 Nov 2019 14:50:04 +0000 (09:50 -0500)]
Add a test for the previous fix
Matthias Clasen [Fri, 29 Nov 2019 14:00:05 +0000 (14:00 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
builder-tool: Fix handling of layout properties
See merge request GNOME/gtk!1219